package com.campus.campus.job.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 维护报修表
 * </p>
 *
 * @author mwb
 * @since 2024-11-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("repair_request")
@ApiModel(value="RepairRequest对象", description="维护报修表")
public class RepairRequest implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "宿舍号")
    @TableField("dorm_id")
    private String dormId;

    @ApiModelProperty(value = "报修详情")
    @TableField("description")
    private String description;

    @ApiModelProperty(value = "维修状态（0待处理，1已完成，2已取消）")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "学生学号")
    @TableField("student_id")
    private Integer studentId;

    @ApiModelProperty(value = "现场照片")
    @TableField("image")
    private String image;

    @ApiModelProperty(value = "报修人")
    @TableField("repair_by")
    private String repairBy;

    @ApiModelProperty(value = "联系方式")
    @TableField("contact")
    private String contact;

    @ApiModelProperty(value = "报修时间")
    @TableField("time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime time;


    @ApiModelProperty(value = "报修类型")
    @TableField("repair_type")
    private String repairType;

    @ApiModelProperty(value = "完成时间")
    @TableField("finish_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime finishTime;

    @ApiModelProperty(value = "维修人员id")
    @TableField("repair_technician_id")
    private Integer repairTechnicianId;


}
